package acme.bloodtime.dao;

import java.util.ArrayList;
import java.util.List;

import modelo.ICiudadArticuloDO;
import modelo.ICiudadDO;
import modelo.ICiudadDistanciaDO;
import modelo.IPropiedadVampiroDO;
import modelo.IVampiroDO;
import modelo.IVisitaDO;

import dao.api.DataObject;

/**
 * 
 * @author Eduardo D. Sandoval V.
 * 
 */
public class CiudadDO implements DataObject, ICiudadDO {

	// ----------------------------
	// Columnas de la tabla Ciudad
	// ----------------------------

	public static final String NOMBRE/*				*/= "nombre";
	public static final String DESCRIPCION/*		*/= "descripcion";
	public static final String IMAGEN/*				*/= "imagen";
	public static final String PTOS_REQUERIDOS/*	*/= "ptosRequeridos";

	// -------------------------------
	// Identificador auto-incremental
	// -------------------------------

	private int id;

	// -------------------
	// Datos de la Ciudad
	// -------------------

	private String nombre;
	private String descripcion;
	private byte [] imagen;
	private int ptosRequeridos;

	// ------------
	// Referencias
	// ------------

	private List<IVampiroDO> vampiroList = //
	new ArrayList<IVampiroDO>();

	private List<IPropiedadVampiroDO> propiedadVampiroList = //
	new ArrayList<IPropiedadVampiroDO>();

	private List<ICiudadDistanciaDO> ciudadDistanciaDerList = //
	new ArrayList<ICiudadDistanciaDO>();
	
	private List<ICiudadDistanciaDO> ciudadDistanciaIzqList = //
		new ArrayList<ICiudadDistanciaDO>();

	private List<ICiudadArticuloDO> ciudadArticuloList = //
	new ArrayList<ICiudadArticuloDO>();
	
	private List<IVisitaDO> visitaList = //
		new ArrayList<IVisitaDO>();

	// ---------------------------------------------------------------------------------------------------------------------------------------

	public CiudadDO() {
		// Empty
	}

	@Override
	public int getId() {
		return id;
	}

	@Override
	public void setId(int id) {
		this.id = id;
	}

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getDescripcion() {
		return descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}

	public byte [] getImagen() {
		return imagen;
	}

	public void setImagen(byte [] imagen) {
		this.imagen = imagen;
	}

	public int getPtosRequeridos() {
		return ptosRequeridos;
	}

	public void setPtosRequeridos(int ptosRequeridos) {
		this.ptosRequeridos = ptosRequeridos;
	}

	public List<IVampiroDO> getVampiroList() {
		return vampiroList;
	}

	public void setVampiroList(List<IVampiroDO> vampiroList) {
		this.vampiroList = vampiroList;
	}

	public List<IPropiedadVampiroDO> getPropiedadVampiroList() {
		return propiedadVampiroList;
	}

	public void setPropiedadVampiroList(
			List<IPropiedadVampiroDO> propiedadVampiroList) {
		this.propiedadVampiroList = propiedadVampiroList;
	}

	public List<ICiudadDistanciaDO> getCiudadDistanciaDerList() {
		return ciudadDistanciaDerList;
	}

	public void setCiudadDistanciaDerList(
			List<ICiudadDistanciaDO> ciudadDistanciaDerList) {
		this.ciudadDistanciaDerList = ciudadDistanciaDerList;
	}

	public List<ICiudadDistanciaDO> getCiudadDistanciaIzqList() {
		return ciudadDistanciaIzqList;
	}

	public void setCiudadDistanciaIzqList(
			List<ICiudadDistanciaDO> ciudadDistanciaIzqList) {
		this.ciudadDistanciaIzqList = ciudadDistanciaIzqList;
	}

	public List<ICiudadArticuloDO> getCiudadArticuloList() {
		return ciudadArticuloList;
	}

	public void setCiudadArticuloList(List<ICiudadArticuloDO> ciudadArticuloList) {
		this.ciudadArticuloList = ciudadArticuloList;
	}

	public List<IVisitaDO> getVisitaList() {
		return visitaList;
	}

	public void setVisitaList(List<IVisitaDO> visitaList) {
		this.visitaList = visitaList;
	}

}
